export const validateUsername = (_: unknown, value: string) => {
  if (!value) {
    return Promise.reject('用户名不能为空')
  } else if (value.length > 6) {
    return Promise.reject('用户名不能超过6位')
  } else if (!/^[a-zA-Z0-9]+$/.test(value)) {
    return Promise.reject('用户名只能包含纯数字或纯英文字母')
  }
  return Promise.resolve()
}

export const validatePassword = (_: unknown, value: string) => {
  if (!value) {
    return Promise.reject('密码不能为空')
  } else if (value.length < 6) {
    return Promise.reject('密码不能少于6位')
  } else if (
    !/(?=.*[a-z])(?=.*[A-Z])(?=.*\d)(?=.*[@#$%^&*()]).*$/.test(value)
  ) {
    return Promise.reject(
      '密码必须包含至少1个大写字母、1个小写字母、1个数字和1个特殊字符'
    )
  }
  return Promise.resolve()
}

export const validatePhone = (_: unknown, value: string) => {
  if (!value) {
    return Promise.reject('手机号不能为空')
  } else if (!/^1[3456789]\d{9}$/.test(value)) {
    return Promise.reject('请输入有效的手机号')
  }
  return Promise.resolve()
}

export const validateCode = (_: unknown, value: string) => {
  if (!value) {
    return Promise.reject('验证码不能为空')
  }
  return Promise.resolve()
}
